package com.keyware.kd.service.itf.auditlog;

import com.keyware.kd.repository.entity.auditlog.AuditLog;
import com.keyware.kd.repository.entity.auditlog.AuditLogSnapshot;
import com.keyware.kd.repository.entity.auditlog.UserAuditLog;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

public interface UserAuditLogService {
	int deleteByPrimaryKey(String id);

	int deleteAudit(List listId);

	List<UserAuditLog> selectAudit(List<String> listId);

    int insert(UserAuditLog record);

	int insertSelective(UserAuditLog record);

	UserAuditLog selectByPrimaryKey(String id);

    List<UserAuditLog> selectAll(String userId);

	/**
	 * 根据条件查询日志数据
	 * @param userAuditLog
	 * @return
	 */
	List<UserAuditLog> selectUserAuditLogBySelective(UserAuditLog userAuditLog);

    /**
	 *@author 申鹏飞
	 *@title 查询安全审计员审计页面信息
	 * @return
	 *@date 2016-07-01
	 */
    List<UserAuditLog> safeAuditLog(String startDate, String endDate);
    /**
	 *@author 申鹏飞
	 *@title 查询安全保密员审计页面信息
	 * @return
	 *@date 2016-07-01
	 */
    List<UserAuditLog> safeSecretAuditLog(String startDate, String endDate);

    /**
	 *@author 申鹏飞
	 *@title 查询管理员审计页面信息
	 * @return
	 *@date 2016-07-01
	 */
    List<UserAuditLog> selectAdminLog(String startDate, String endDate);


    int updateByPrimaryKey(UserAuditLog record);
    /**
     *
     *@author 申鹏飞
     *@title 插入日志
     *@param
     * @param logName 功能
     * @param logNameType 模块
     * @param comments 详情
     * @param request
     *
     *@date 20160623
     */
    public void insertLog(String logName, String logNameType, String comments, HttpServletRequest request);

	/**
	 * @Title: selectAllLog
	 * @Description: 查询所有日期信息
	 * @param
	 * @return
	 * @author 雒乐
	 * @return List<AuditLog>
	 */
	List<UserAuditLog> selectAllLog(String startDate, String endDate);

	List<UserAuditLog> selectLogUserName();
}
